{{tag>Trusty Xenial  ntp }}

----

====== timedatectl ======

[[NTP]] (Network Time Protocol) est un protocole permettant de distribuer l'heure sur un réseau informatique. Il assure la synchronisation des horloges à travers le réseau internet (ou un réseau local). Un client peut ainsi demander l'heure actuelle à un serveur et l'utiliser pour ajuster sa propre horloge. Chaque machine peut être à la fois serveur et client.

Ce dispositif est assis sur une organisation complexe et hiérarchisée à partir d'horloges atomiques et de serveurs en cascades. La mise à jour de l'heure de chaque appareil doit tenir compte des délais de transmission de l'information depuis l'horloge atomique.

Ubuntu  a longtemps utilisé [[ntpdate]] et ntpd  pour ajuster l'horloge interne des systèmes d'exploitation, cette tâche est désormais assurée par timedatectl qui est installé par défaut dans votre distribution.

Timesyncd se substitue à la partie client de ntpd. Timesync vérifie l'heure de référence à intervalles réguliers et assure le maintien de la synchronisation des horloges. Il effectue également le stockage local des synchronisations, ainsi leur prise en compte est assurée en cas de réinitialisation.

===== Configuration =====

Si [[ntpdate]] ou ntpd sont installés, timedatectl se désactive pour permettre à l'utilisateur d'utiliser l'ancienne configuration. Ce principe permet d'éviter la coexistence de deux serveurs de temps sur le même appareil, il a pour défaut, en cas de mise à jour à partir d'une ancienne version de ntp ou [[ntpdate]], de risquer de désactiver les services qui utilisent systemd.

La configuration de timedatectl est [[:tutoriel:comment_modifier_un_fichier|modifiable]] avec les [[:sudo|droits d'administration]] dans le fichier **/etc/systemd/timesyncd.conf** (choix du serveur) ou dans un fichier de configuration situé dans **/etc/systemd/timesyncd.conf.d/** (voir  [[https://ubuntu.com/server/docs/network-ntp|doc]]).

===== Installation =====

Taper la commande suivante :
    sudo apt install -V systemd-timesyncd

===== Utilisation=====
Timedatectl est installé par défaut et fonctionne nativement à l'installation d'Ubuntu.

==== Réglages locaux ====

=== Fixer l’heure ===
<code>
timedatectl set-time 'HH:mm:ss'
</code>
syntaxe : ''HH:mm:ss'' = Heure, minute, seconde.

=== Fixer la date ===
<code>
timedatectl set-time 'A-M-J'
</code>
syntaxe : ''A-M-J'' = Année, Mois, Jour.

=== Fixer l’heure et la date ===
<code>
timedatectl set-time 'A-M-J HH:mm:ss'
</code>

=== Fuseaux horaires ===
Lister les fuseaux horaires :
<code>
timedatectl list-timezones
</code>

Choisir un fuseau horaire (Time Zone) :
<code>
timedatectl set-timezone Europe/Paris
</code>

==== Choix du serveur ntp ====

Le nom du serveur de synchronisation de timedatectl et timesyncd peut être défini par l'utilisateur dans un fichier spécifique ("drop-in") situé dans le répertoire **/etc/systemd/timesyncd.conf.d** ou dans le fichier **/etc/systemd/timesyncd.conf**. La documentation conseille de privilégier la première solution. Le nom du fichier "drop-in" est obligatoirement terminé par l'extension **.conf** pour être pris en compte. Des options complémentaires peuvent être indiquée dans le fichier (voir doc).
Une liste de serveurs de temps libre peut être consultée [[https://www.pool.ntp.org/fr/|ici]]. Une liste mondiale des serveurs se trouve à [[https://www.ntppool.org/zone/fr|cet endroit]].

=== Définir les serveurs de temps ===

La liste des serveurs de temps est insérée dans le fichier de configuration  **/etc/systemd/timesyncd.conf** à la ligne //NTP=//. D'autres serveurs peuvent être ajoutés à la ligne //FallbackNTP// :
<file>
[Time]
NTP=fr.pool.ntp.org
FallbackNTP=0.ubuntu.pool.ntp.org 1.ubuntu.pool.ntp.org ntp.ubuntu.com
</file>
<note important>
Préférer un serveur dans votre pays… [[:ntp#les_serveurs_ntp_existants|ntp existants]].\\
Dans un réseau d'entreprise, un serveur ou le routeur principal joue généralement ce rôle, contacter votre administrateur réseau si besoin
</note>

=== Activer la synchronisation ===
<code>
timedatectl set-ntp true
</code>

=== Stopper la synchronisation ===
<code>
timedatectl set-ntp false
</code>

=== Vérifier le statut et de la synchronisation des bases de temps ===

Le statut de l'heure et de sa configuration à partir de timedatectl et timesyncd peut être vérifié par la commande :
<code>timedatectl status</code>qui donnera par exemple
<code>
Local time: dim. 2017-11-05 20:14:26 CET
Universal time: dim. 2017-11-05 19:14:26 UTC
RTC time: dim. 2017-11-05 19:14:27
Time zone: Europe/Paris (CET, +0100)
Network time on: yes
NTP synchronized: no
RTC in local TZ: no
</code>

===== Voir aussi =====
  * Basé sur [[https://help.ubuntu.com/lts/serverguide/NTP.html|« Synchronisation temporelle avec NTP»]] <sup>**(en)**</sup>
  * [[https://memo-linux.com/timedatectl-loutil-de-systemd-pour-regler-lheure-et-la-date/|timedatectl : l’outil de systemd pour régler l’heure et la date]]

----
//Contributeurs principaux : [[:utilisateurs/zococo|Zococo]]



